home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
C64
/
B-Business
/
(c)b4.d64
/
label maker.c
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2007-02-04
|
16KB
|
603 lines
10 REM ***LABEL MAKER***
20 REM ///ORIGINAL PROGRAM WRITTEN BY S.P.TULK NBAGV-MADISON, OHIO-03/81
30 REM ///REVISED BY S.P. TULK NBAGU IN JUNE 1981 ///
40 REM
50 REM :::REVISED BY MICHAEL MOORE IN OCT. 1982:::
60 REM :::CONTRIBUTED BY MICHAEL MOORE TO APPLE CORPS OF DALLAS:::
70 REM
80 REM ---ADAPTED FOR COMMODORE 64 BY PHIL DEGELIA, DECATUR, TEXAS, 09/83---
120 PRINT CHR$(147):FOR I=1 TO 5:PRINT CHR$(17):NEXT I:PRINT SPC(7)
125 PRINT CHR$(18) " PRINTER MUST BE TURNED ON " CHR$(146)
130 FOR I=1 TO 1500:NEXT I
140 REM
145 REM :::::::LABEL INPUT MENU::::::::
148 REM
150 PRINT CHR$(147):PRINT:REM CHR$(147) IS CLEAR/HOME
170 FOR I=1 TO 40:PRINT "*";:NEXT I:PRINT;
180 PRINT "*"SPC(38)"*";
190 PRINT "* *** LABEL MAKER *** *";
200 PRINT "*" SPC(38) "*";
210 FOR I=1 TO 40:PRINT "*";:NEXT I
212 PRINT CHR$(17) SPC(6) CHR$(17) "ORIGINAL PROGRAM WRITTEN BY:"
213 PRINT CHR$(17)SPC(13)"S. P. TULK"
214 PRINT CHR$(17)CHR$(17)SPC(7) "MODIFIED BY MICHAEL MOORE"
215 PRINT CHR$(17)CHR$(17)SPC(4)"ADAPTED FOR C-64 BY PHIL DEGELIA"
220 PRINT:PRINT " PRINTER CODES DESIGNED FOR "
225 PRINT SPC(13) "GEMINI 10X/15 "
230 PRINT:PRINT
233 PRINT " --PRESS " CHR$(18) "SHIFT" CHR$(146) " KEY TO CONTINUE.--"
235 WAIT 653,1
240 GOSUB 6300:E=1
245 REM E IS EMPHASIZE ON/OFF FLAG=1 INDICATES OFF
250 PRINT CHR$(147)CHR$(17)CHR$(17)CHR$(17)
255 PRINT SPC(13) CHR$(18) " MAIN MENU " CHR$(146)
260 PRINT CHR$(17) SPC(15) "SELECTION"
330 PRINT:PRINT:PRINT " [ 1 ] - - - NEW LABEL"
340 PRINT:PRINT " [ 2 ] - - - YOUR LABEL"
350 PRINT:PRINT " [ 3 ] - - - 10 MOST USED LABELS"
360 PRINT:PRINT " [ 4 ] - - - SHORTENED DISK LABEL"
370 PRINT:PRINT " [ 5 ] - - - FULL SIZE DISK LABEL"
380 PRINT:PRINT " [ Q ] - - - < END >"
385 PRINT:PRINT:PRINT
390 PRINT " [ ] .......YOUR CHOICE"
400 GET A1$:IF A1$="" THEN 400
450 IF A1$="1" THEN PRINT CHR$(147):S1=30:GOSUB 6020:GOSUB 11005:GOTO 1025
455 REM GET LABEL LINES-DISPLAY LABEL ON SCREEN-GOTO PRINT MENU ROUTINE
460 IF A1$="2" THEN PRINT CHR$(147):GOSUB 17010:PRINT CHR$(147):GOTO 1020
461 REM GET LABEL-GOTO PRINT MENU ROUTINE
470 IF A1$="3" THEN PRINT CHR$(147):GOTO 18010
471 REM GOTO MOST USED MENU ROUTINE
480 IF A1$="4" THEN S1=23:L=1:A=27:B=7:C=22:D=3:GOTO 4008
481 REM GOTO LABEL PRINT ROUTINE
485 IF A1$="5" THEN S1=29:L=1:A=33:B=10:C=28:D=0:GOTO 4008
486 REM GOTO LABEL PRINT ROUTINE
490 IF A1$="Q" THEN GOTO 25020
491 REM GOTO END ROUTINE
1000 REM
1005 REM ::::PRINT CHOICE::::
1008 REM
1020 GOSUB 11005:REM DISPLAY LABEL ON SCREEN
1022 REM CPL=CHARACTERS PER LINE
1025 PRINT:PRINT:PRINT SPC(14) CHR$(18)" PRINT MENU "CHR$(146)
1028 REM CHR$(18) IS REVERSE ON -- CHR$(146) IS REVERSE OFF --
1030 PRINT SPC(15)"SELECTION"
1040 PRINT " [ 1 ] - - - STANDARD 80 CPL"
1050 PRINT " [ 2 ] - - - COMPRESSED 132 CPL"
1060 PRINT " [ 3 ] - - - TRIPLE COLUMN LABELS-STD"
1065 PRINT " [ 4 ] - - - DOUBLE WIDE/COMPR 66 CPL"
1070 PRINT " [ 5 ] - - - DOUBLE WIDE 40 CPL"
1075 PRINT " [ 6 ] - - - EMPHASIZED"
1080 PRINT " [ 9 ] - - - RETURN TO MAIN MENU"
1085 GOSUB 10020:REM DISPLAY EMPHASIZE FLAG
1090 PRINT:PRINT " [ ] ..... YOUR CHOICE"
1092 REM
1093 REM ---- EMPHASIZED PRINT MODE DOES NOT COMBINE WITH COMPRESSED MODE---
1094 REM
1095 REM
1100 PRINT CHR$(19):FOR I=1 TO 11:PRINT CHR$(17):NEXT I:PRINT SPC(2):INPUT Y
1105 ON Y GOTO 1110,1120,1130,1140,1147,1149,1155,1155,1155
1110 PRINT CHR$(147)
1112 OPEN4,4,1:CMD4
1114 PRINT CHR$(18)
1116 PRINT#4:CLOSE4
1117 H=5:Q=18:GOSUB 11005:GOTO 12050
1118 REM DISPLAY LABEL ON SCREEN-GOTO LABEL PRINT ROUTINE
1119 REM H=HORIZONTAL SPACING VARIABLE
1120 PRINT CHR$(147):Q=20
1121 OPEN4,4,1:CMD4
1122 PRINT CHR$(27)"F"
1123 PRINT CHR$(20)
1125 PRINT#4:CLOSE4
1126 REM Q=VARIABLE TO TURN ON OR OFF COMPRESSED PRINT
1127 H=9:GOSUB 11005:GOTO 12050
1128 REM CHR$(27)"F" TURNS OFF EMPHASIZED PRINT
1129 REM CHR$(20) TURNS ON COMPRESSED PRINT - DISPLAY LABEL ON SCREEN
1130 H=5:GOSUB 2200:GOSUB 11005:GOTO 16010
1131 REM DISPLAY LABEL ON SCREEN-GOTO TRIPLE WIDE LABEL PRINT
1140 PRINT CHR$(147):OPEN4,4,1:CMD4:PRINT CHR$(27)"F":PRINT#4:CLOSE4
1141 OPEN4,4,1:CMD4:PRINT CHR$(20);:PRINT#4:CLOSE4
1142 H=4:GOSUB 11005:GOTO 14050:REM CHR$(27)"F" TURNS OFF EMPHASIZED PRINT
1144 REM CHR$(20) TURNS ON COMPRESSED PRINT
1145 REM DISPLAY LABEL ON SCREEN - GOTO LABEL PRINT ROUTINE
1147 H=3:S1=15:PRINT CHR$(147):GOSUB 11005:GOTO 14050
1148 REM GOTO LABEL PRINT ROUTINE
1149 PRINT CHR$(147)
1150 H=0:GOSUB 11005:PRINT CHR$(17)
1152 PRINT " " CHR$(18) " EMPHASIZE ON " CHR$(146) " "
1153 GOTO 1025
1155 GOTO 240:REM RETURN TO MAIN MENU
2000 REM
2010 REM :::::INSTRUCTIONS:::::
2020 REM
2023 PRINT CHR$(147)
2025 PRINT:PRINT:PRINT " " CHR$(18) " INSTRUCTIONS " CHR$(146)
2030 PRINT:PRINT:PRINT " PRINT WIDTH IS SET BY LINE LIMITER"
2040 PRINT " FOR 3 1/2 INCH LABELS."
2050 PRINT:PRINT " 5 LINES NORMAL OR 3 LINES BORDERED."
2070 PRINT:PRINT " DO NOT USE COMMAS OR COLONS."
2100 PRINT:PRINT " A RETURN WITH NO ENTRY WILL GIVE"
2110 PRINT " A BLANK LINE."
2120 PRINT:PRINT
2122 PRINT " --PRESS " CHR$(18) "SHIFT" CHR$(146) " KEY TO CONTINUE.--"
2124 WAIT 653,1
2126 RETURN
2200 REM
2210 REM ::TRIPLE COL. INSTRUCTIONS::
2220 REM
2225 PRINT CHR$(147)
2230 PRINT:PRINT:PRINT " TRIPLE COLUMN LABEL INSTRUCTIONS"
2240 PRINT:PRINT:PRINT " THE LENGTH OF TRIPLE COLUMN LABELS"
2250 PRINT " MUST BE LESS THAN THE NORMAL WIDTH "
2255 PRINT " LABEL."
2260 PRINT " THE TRIPLE COLUMN LABELS ARE SET TO"
2265 PRINT " PRINT A 17 CHARACTER LABEL WITH TWO"
2270 PRINT " SPACES BETWEEN LABELS."
2280 PRINT " THESE VARIABLES MAY BE CHANGED AT "
2290 PRINT " PROGRAM LINES 16000 TO 17000."
2300 PRINT:PRINT " IF YOU ENTERED A LABEL WITH "
2310 PRINT " MORE THAN 17 CHARACTERS, YOU MAY "
2320 PRINT " RETURN TO RE-ENTER THE LABEL."
2400 PRINT:PRINT
2410 PRINT " DO YOU WANT TO RETURN TO THE"
2415 PRINT " MAIN MENU? (CR='NO')"
2520 GET A6$:IF A6$="" THEN 2520
2530 IF A6$="Y" THEN 240
2540 IF A6$=CHR$(13) THEN RETURN
2550 IF A6$<>"Y" OR A6$<> CHR$(13) THEN 2520
4000 REM
4005 REM ::::LABEL BORDER::::
4007 REM
4008 OPEN4,4,1:CMD4:PRINT CHR$(18):REM TURN OFF COMPRESSED PRINT
4009 PRINT#4:CLOSE4:REM TURN OFF PRINTER
4010 BR$="*":REM SET DEFAULT VALUE FOR LABEL BORDER
4011 V1$="001":REM SETS INITIAL DISPLAY VALUE FOR VOLUME
4012 V2$=" VOL. ":REM SET DEFAULT VALUE FOR TOP LINE
4013 A4$="6":V$="Y":A$="":B$="":C$=""
4014 Z$=" COM 64 ":REM SETS INITIAL DISPLAY VALUE FOR BOTTOM BORDER
4015 GOSUB 4705:REM DISPLAY CURRENT LABEL
4031 PRINT:PRINT:PRINT " WHAT CHARACTER DO YOU WANT TO USE"
4032 PRINT " FOR THE BORDER? [ ] DEFAULT = *"
4045 INPUT "";BR$
4050 IF LEN(BR$)=>2 THEN 4010
4055 PRINT CHR$(147)
4060 PRINT:PRINT:PRINT" WOULD YOU LIKE A VOLUME NUMBER IN"
4061 PRINT " THE TOP LINE OF THE BORDER ?":PRINT:PRINT
4070 PRINT " [ Y ] - - - YES":PRINT
4080 PRINT " [ N ] - - - NO":PRINT
4090 PRINT " [ ] ..... YOUR CHOICE"
4091 GET V$:IF V$="" THEN 4091
4092 PRINT CHR$(147)
4110 IF V$="N" THEN 4191
4120 IF V$="Y" THEN PRINT CHR$(147):PRINT:PRINT
4121 PRINT " ENTER YOUR VOLUME NUMBER (###)"
4122 PRINT "(MUST BE 3 CHARACTERS LONG) [ ]";:GOTO 4140
4130 GOTO 4060
4140 INPUT "";V1$
4145 IF LEN(V1$)<>3 THEN 4060
4150 PRINT CHR$(147):PRINT:PRINT:PRINT " ENTER REPLACEMENT FOR WORD 'VOL.'"
4151 PRINT " IF DESIRED. ( 4 CHARACTERS MAXIMUM)"
4152 PRINT TAB(8) "DEFAULT IS 'VOL.': [ ]"
4155 PRINT:PRINT:INPUT "";V2$:IF V2$="" THEN V2$="VOL."
4157 IF LEN(V2$) = 4 THEN V2$= " " +V2$+ " "
4159 IF LEN(V2$) = 3 THEN V2$ = " " + " " +V2$+ " "
4160 PRINT "4160":IF LEN(V2$) < 3 THEN 4060
4190 PRINT:PRINT:PRINT:
4191 PRINT CHR$(147)
4192 PRINT " WHAT WOULD YOU LIKE IMPRINTED"
4194 PRINT " AT THE BOTTOM OF THE BORDER?"
4200 PRINT:PRINT:PRINT " [ 1 ] - - PET 2001":PRINT
4210 PRINT " [ 2 ] - - CBM 8032 ":PRINT
4220 PRINT " [ 3 ] - - CBM 4032 ":PRINT
4230 PRINT " [ 4 ] - - CBM 8096 ":PRINT
4240 PRINT " [ 5 ] - - VIC 20":PRINT
4245 PRINT " [ 6 ] - - COM 64":PRINT
4250 PRINT " [ 0 ] - - SOLID BORDER ":PRINT:PRINT
4260 PRINT " [ ] ..... YOUR CHOICE";:PRINT
4262 GET A4$:IF A4$="" THEN 4262
4265 IF A4$ <"0" OR A4$> "8" THEN 4260
4270 IF A4$="1" THEN Z$= " PET 2001 "
4280 IF A4$="2" THEN Z$= " CBM 8032 "
4290 IF A4$="3" THEN Z$= " CBM 4032 "
4300 IF A4$="4" THEN Z$= " CBM 8096 "
4310 IF A4$="5" THEN Z$= " VIC 20 "
4315 IF A4$="6" THEN Z$= " COM 64 "
4320 IF A4$="0" THEN Z$= "**********"
4321 GOTO 4330
4325 L=1:GOSUB 4705:REM DISPLAY CURRENT LABEL
4330 PRINT CHR$(147):GOTO 12030:REM GOTO 80 CPL SETUP
4700 REM
4701 REM :::::DISK LABEL FORMAT:::::
4702 REM
4705 PRINT CHR$(147)
4710 H=4:REM SET VALUE FOR HORIZONTAL TAB DURING SCREEN DISPLAY
4720 IF V$="N" THEN V1$=BR$+BR$+BR$:REM FILL TOP BORDER WITH REQUIRED CHAR.
4723 LET J$=" "
4725 IF V$="N" THEN J$=BR$
4730 IF V$="N" THEN V2$=BR$+BR$+BR$+BR$+BR$+BR$
4760 PRINT TAB(H+D):FOR BR=1 TO B:PRINT BR$;:NEXT BR
4761 PRINT V2$;:PRINT V1$;:PRINT J$;:FOR BR=1 TO B:PRINT BR$;:NEXT BR
4762 PRINT CHR$(10)
4770 L=L+1:IF L=2 THEN L$=A$
4780 IF L=3 THEN L$=B$
4790 IF L=4 THEN L$=C$
4794 PRINT TAB(H+D)BR$;
4796 HT=INT((C-LEN(L$))/2)
4798 HA=HT+1
4800 T=HT+LEN(L$)+HA
4801 IF T>C THEN HA=HT
4803 PRINT SPC(HT)L$SPC(HA)BR$ CHR$(10)
4808 IF L<4 THEN 4770
4810 IF A4$="0" THEN Z$=BR$+BR$+BR$+BR$+BR$+BR$+BR$+BR$+BR$+BR$
4820 PRINT SPC(H+D);:FOR BR=1TO B:PRINT BR$;:NEXT BR
4830 PRINT Z$;:FOR BR=1TO B:PRINT BR$;:NEXT BR:PRINT CHR$(10) CHR$(10)
4845 L=1:REM RESET LINE COUNT FLAG
4850 RETURN
6000 REM
6005 REM :::::INPUT LINES:::::
6010 REM
6020 PRINT CHR$(147)
6030 FOR I=1 TO 4:PRINT CHR$(17):NEXT I
6040 PRINT " INPUT LINE #1 "
6050 PRINT CHR$(19):FOR I=1 TO 4:PRINT CHR$(17):NEXTI:PRINT TAB(S1+1)"]"
6060 PRINT:PRINT SPC(5):INPUT "";A$
6070 PRINT CHR$(19):FOR I=1 TO 4:PRINT CHR$(17):NEXT I
6080 PRINT " INPUT LINE #2 "
6090 PRINT CHR$(19):FOR I=1 TO 4:PRINT CHR$(17):NEXTI:PRINT TAB(S1+1)"]"
6095 PRINT CHR$(19):FOR I=1 TO 6:PRINT CHR$(17):NEXT I
6100 PRINT SPC(5):INPUT "";B$
6110 PRINT CHR$(19):FOR I=1 TO 4:PRINT CHR$(17):NEXT I
6120 PRINT " INPUT LINE #3 "
6130 PRINT CHR$(19):FOR I=1 TO 4:PRINT CHR$(17):NEXTI:PRINT TAB(S1+1)"]"
6135 PRINT CHR$(19):FOR I=1 TO 7:PRINT CHR$(17):NEXT I
6140 PRINT SPC(5):INPUT "";C$
6150 PRINT CHR$(19):FOR I=1 TO 4:PRINT CHR$(17):NEXT I
6160 PRINT " INPUT LINE #4 "
6170 PRINT CHR$(19):FOR I=1 TO 4:PRINT CHR$(17):NEXTI:PRINT TAB(S1+1)"]"
6175 PRINT CHR$(19):FOR I=1 TO 8:PRINT CHR$(17):NEXT I
6180 PRINT SPC(5):INPUT "";E$
6190 PRINT CHR$(19):FOR I=1 TO 4:PRINT CHR$(17):NEXT I
6200 PRINT " INPUT LINE #5 "
6210 PRINT CHR$(19):FOR I=1 TO 4:PRINT CHR$(17):NEXTI:PRINT TAB(S1+1)"]"
6215 PRINT CHR$(19):FOR I=1 TO 9:PRINT CHR$(17):NEXT I
6220 PRINT SPC(5):INPUT "";F$
6230 RETURN
6300 REM
6310 REM :::RESET LINE PRINT VALUES::
6320 REM
6330 A$=""
6340 B$=""
6350 C$=""
6360 E$=""
6370 F$=""
6380 RETURN
7000 REM
7005 REM :::::HOW MANY?:::::
7010 REM
7020 PRINT:PRINT:PRINT " HOW MANY LABELS ";
7040 INPUT X
7050 IF X=0 THEN GOTO 240:REM RETURN TO MAIN MENU
7060 RETURN
8000 REM
8005 REM :::::STANDARD PRINT:::::
8010 REM
8020 IF L<>1 THEN GOTO 8040
8021 REM L=1 INDICATES THAT DISK LABELS ARE TO BE PRINTED
8030 FOR I=1 TO X:GOSUB 4720:NEXT I:REM PRINT DISK LABELS
8035 RETURN
8040 FOR I=1 TO X
8050 PRINT SPC(H) A$ CHR$(10):REM CHR$(10) IS LINE FEED
8060 PRINT SPC(H) B$ CHR$(10)
8070 PRINT SPC(H) C$ CHR$(10)
8080 PRINT SPC(H) E$ CHR$(10)
8090 PRINT SPC(H) F$ CHR$(10)
8100 PRINT CHR$(10)
8110 NEXT I
8120 RETURN
9000 REM
9005 REM :::::DOUBLE WIDE:::::
9010 REM
9015 REM CHR$(14) REQUIRED ON EACH LINE TO TURN ON DOUBLE WIDE PRINT
9020 FOR I=1 TO X
9030 PRINT CHR$(14);
9040 PRINT SPC(H) A$ CHR$(10)
9050 PRINT CHR$(14);
9060 PRINT SPC(H) B$ CHR$(10)
9070 PRINT CHR$(14);
9080 PRINT SPC(H) C$ CHR$(10)
9090 PRINT CHR$(14);
9100 PRINT SPC(H) E$ CHR$(10)
9110 PRINT CHR$(14);
9120 PRINT SPC(H) F$ CHR$(10)
9130 PRINT CHR$(10)
9140 NEXT I
9150 PRINT#4:CLOSE4
9160 RETURN
10000 REM
10010 REM ::::SET UP EMPHASIZE::::
10015 REM
10020 IF E=0 THEN GOTO 10050
10030 IF E=1 THEN GOTO 10090
10040 RETURN
10050 OPEN4,4,1:CMD4:REM PRINTER ON
10055 PRINT CHR$(27)"E"
10060 PRINT#4:CLOSE4
10065 REM CHR$(27)"E" TURNS ON EMPHASIZED PRINT
10080 E=1:RETURN
10090 OPEN4,4,1:CMD4:PRINT CHR$(27)"F":PRINT#4:CLOSE4
10091 REM CHR$(27)"F" TURNS OFF EMPHASIZED PRINT
10120 E=0:RETURN
11000 REM
11005 REM :SCREEN PRINT OF LABEL VALUES:
11010 REM
11020 PRINT CHR$(147)CHR$(17)CHR$(17):REM CHR$(147) IS CLR/HOME
11030 PRINT SPC(6)A$
11040 PRINT SPC(6)B$
11050 PRINT SPC(6)C$
11060 PRINT SPC(6)E$
11070 PRINT SPC(6)F$
11080 RETURN
12000 REM
12005 REM ::::: 80 CPL SETUP :::::
12010 REM
12030 GOSUB 2000:REM INSTRUCTIONS
12040 GOSUB 6020:REM GET INPUT
12045 IF L=1 THEN GOSUB 4705:REM DISPLAY DISK LABEL
12047 IF L<>1 THEN GOSUB 11020:REM DISPLAY REGULAR LABELS
12050 GOSUB 7020:REM HOW MANY?
12060 OPEN4,4,1:CMD4
12064 REM PRINTER ON
12070 GOSUB 8020:REM PRINT LABELS
12079 PRINT CHR$(Q):REM Q MAY TURN COMPRESSED PRINT ON OR OFF
12080 PRINT#4:CLOSE4
12081 REM PRINTER OFF
12085 PRINT CHR$(147):IF L=1 THEN GOSUB 4705:IF L=1 THEN GOTO 12090
12088 GOSUB 11030
12090 PRINT:PRINT:PRINT " MORE OF THE SAME LABEL ";:INPUT X$
12094 IF LEFT$(X$,1)="Y" THEN PRINT CHR$(147):GOTO 12047
12096 REM PERFORM DISPLAY LABELS ON SCREEN--CHR$(147) IS CURSOR CLEAR/HOME
12100 IF LEFT$(X$,1)="N" THEN GOTO 12120
12110 GOTO 12085
12120 Q=18:L=0:GOSUB 6300:GOTO 240:REM GOTO MAIN MENU
13000 REM
13005 REM ::::: 132 CPL SETUP :::::
13010 REM
13020 OPEN4,4,1:CMD4
13021 PRINT CHR$(20)
13025 PRINT#4:CLOSE4
13029 REM CHR$(20) TURNS ON COMPRESSED PRINT
13030 GOTO 12030:REM GOTO PRINT SETUP
14000 REM
14005 REM ::::: 40 CPL SETUP :::::
14010 REM
14030 GOSUB 2020:REM INSTRUCTIONS
14040 GOSUB 6020:REM GET INPUT
14050 GOSUB 7020:REM HOW MANY?
14060 OPEN4,4,1:CMD4
14070 GOSUB 9020:REM PRINT LARGE
14090 PRINT CHR$(147):GOSUB 11020
14094 PRINT:PRINT " MORE OF THE SAME LABEL ";:INPUT X$
14096 IF LEFT$(X$,1)="Y" THEN PRINT CHR$(147):GOSUB 11020:GOTO 14050
14098 REM DISPLAY LABEL ON SCREEN
14100 OPEN4,4,1:CMD4
14110 PRINT CHR$(18)
14120 PRINT#4:CLOSE4
14200 GOSUB 6300:GOTO 240:REM GOTO MAIN MENU
15000 REM
15005 REM ::::: 66 CPL SETUP :::::
15010 REM
15020 OPEN4,4,1:CMD4
15030 PRINT CHR$(20);:
15031 REM CHR$(20) TURNS ON COMPRESSED PRINT
15040 PRINT#4:CLOSE4
15080 GOTO 14030:REM GOTO PRINT SETUP
16000 REM
16005 REM :::::TRIPLE WIDE LABEL :::::
16010 REM
16020 GOSUB 11020:REM DISPLAY LABEL
16035 PRINT:PRINT:PRINT SPC(5)"SPECIFY NUMBER OF ROWS OF 3 LABELS"
16040 GOSUB 7020:REM HOW MANY LABEL ROWS?
16045 GOTO 16500
16046 REM
16047 REM ::: CENTER JUSTIFIED :::
16048 REM
16050 OPEN4,4:CMD4
16055 R=17
16080 FOR I=1 TO X
16083 U=1
16100 U=U+1:IF U=2 THEN Y$=A$
16105 IF U=3 THEN Y$=B$
16110 IF U=4 THEN Y$=C$
16115 IF U=5 THEN Y$=E$
16120 IF U=6 THEN Y$=F$
16125 Q=LEN(Y$)
16130 P=INT((R-Q)/2)
16135 REM P=SPACES VARIABLE
16140 PA=P+1
16145 PT=P+Q+PA
16150 IF PT>R THEN PA=P
16155 BT=3:REM BT=SPACES BETWEEN TRIPLE COLUMN LABELS
16160 PRINT SPC(H+P) Y$;SPC(PA+BT+P);Y$;SPC(PA+BT+P);Y$
16165 IF U<6 THEN 16100
16170 U=1:REM RESET LINE COUNT FLAG
16175 PRINT
16180 NEXT
16360 PRINT#4:CLOSE4
16370 PRINT CHR$(147):GOSUB 11020:REM DISPLAY LABEL
16380 PRINT:PRINT:PRINT " MORE OF THE SAME LABEL ";:INPUT X$
16385 IF LEFT$(X$,1)="Y" THEN GOTO 16020
16390 PRINT CHR$(18) CHR$(27)"@":GOSUB 6300:GOTO 240:REM GOTO MAIN MENU
16500 PRINT CHR$(147):PRINT:PRINT:PRINT
16510 PRINT " DO YOU WANT THE LABELS:":PRINT:PRINT
16520 PRINT " C - CENTER JUSTIFIED":PRINT
16530 PRINT " L - LEFT JUSTIFIED":PRINT
16540 PRINT " M - RETURN TO MAIN MENU"
16550 GET A7$:IF A7$="" THEN 16550
16560 IF A7$="C" THEN 16050
16570 IF A7$="L" THEN 16700
16580 IF A7$<>"C" AND A7$<>"L" THEN GOTO 240
16700 REM
16710 REM :::: LEFT JUSTIFICATION :::
16720 REM
16730 OPEN4,4:CMD4
16740 R=17:FOR I=1 TO X:U=1:REM R IS THE LINE LIMITER FOR ONE LABEL
16750 U=U+1:IF U=2 THEN Y$=A$
16760 IF U=3 THEN Y$=B$
16770 IF U=4 THEN Y$=C$
16780 IF U=5 THEN Y$=E$
16790 IF U=6 THEN Y$=F$
16800 Q=LEN(Y$):BT=3:REM BT = SPACES BETWEEN THE LABELS
16810 P=INT(R-Q)
16820 REM P=SPACES VARIABLE
16830 PRINT SPC(H) Y$;SPC(P+BT);Y$;SPC(P+BT);Y$
16840 IF U<6 THEN 16750
16850 U=1:REM RESET LINE COUNT FLAG
16860 PRINT
16870 NEXT
16880 GOTO 16360
17000 REM
17005 REM ::::: YOUR LABEL :::::
17010 REM
17020 A$="Y O U R N A M E"
17030 B$="A D D R E S S "
17040 C$="CITY STATE ZIP"
17050 E$=""
17060 F$="ASSIGN AT LINE 17020"
17070 RETURN
18000 REM
18005 REM ::::: 10 MOST USED :::::
18008 REM
18010 FOR I=1 TO 2:PRINT CHR$(17):NEXT I:PRINT SPC(3)
18015 PRINT " 10 MOST USED LABELS [146]":PRINT
18020 PRINT" SELECT FROM:"
18030 PRINT:PRINT
18040 PRINT " [ 1 ] - - - COMPUTE PUBLICATIONS"
18050 PRINT " [ 2 ] - - - LABEL AT LINE18370"
18060 PRINT " [ 3 ] - - - LABEL AT LINE18440"
18070 PRINT " [ 4 ] - - - LABEL AT LINE18510"
18080 PRINT " [ 5 ] - - - LABEL AT LINE18580"
18090 PRINT " [ 6 ] - - - LABEL AT LINE18650"
18100 PRINT " [ 7 ] - - - LABEL AT LINE18720"
18110 PRINT " [ 8 ] - - - LABEL AT LINE18790"
18120 PRINT " [ 9 ] - - - LABEL AT LINE18860"
18130 PRINT " [ 0 ] - - - LABEL AT LINE18930"
18140 PRINT " [ R ] - - - <RETURN TO MAIN MENU>"
18150 PRINT:PRINT:PRINT " [ ] ..... YOUR CHOICE"
18165 GET A3$:IF A3$="" THEN 18165
18170 IF A3$="1" THEN GOSUB 18300:PRINT CHR$(147):GOTO 1020
18171 REM PERFORM LABEL PICKUP - GOTO PRINT MENU
18180 IF A3$="2" THEN GOSUB 18370:PRINT CHR$(147):GOTO 1020
18190 IF A3$="3" THEN GOSUB 18440:PRINT CHR$(147):GOTO 1020
18200 IF A3$="4" THEN GOSUB 18510:PRINT CHR$(147):GOTO 1020
18210 IF A3$="5" THEN GOSUB 18580:PRINT CHR$(147):GOTO 1020
18220 IF A3$="6" THEN GOSUB 18650:PRINT CHR$(147):GOTO 1020
18230 IF A3$="7" THEN GOSUB 18720:PRINT CHR$(147):GOTO 1020
18240 IF A3$="8" THEN GOSUB 18790:PRINT CHR$(147):GOTO 1020
18250 IF A3$="9" THEN GOSUB 18860:PRINT CHR$(147):GOTO 1020
18260 IF A3$="0" THEN GOSUB 18930:PRINT CHR$(147):GOTO 1020
18270 IF A3$="R" THEN GOTO 240:REM GOTO MAIN MENU
18290 REM ::::: LABEL #1 :::::
18300 A$="COMPUTE PUBLICATIONS, INC."
18310 B$="P. O. BOX 5406"
18320 C$="GREENSBORO, NC 27403"
18330 E$="U.S.A."
18340 F$=""
18350 RETURN
18360 REM ::::: LABEL #2 :::::
18370 A$="UNASSIGNED LINE 18370"
18380 B$=""
18390 C$=""
18400 E$=""
18410 F$=""
18420 RETURN
18430 REM ::::: LABEL #3 :::::
18440 A$="UNASSIGNED LINE 18440"
18450 B$=""
18460 C$=""
18470 E$=""
18480 F$=""
18490 RETURN
18500 REM ::::: LABEL #4 :::::
18510 A$="UNASSIGNED LINE 18510"
18520 B$=""
18530 C$=""
18540 E$=""
18550 F$=""
18560 RETURN
18570 REM ::::: LABEL #5 :::::
18580 A$="UNASSIGNED LINE 18510"
18590 B$=""
18600 C$=""
18610 E$=""
18620 F$=""
18630 RETURN
18640 REM ::::: LABEL #6 :::::
18650 A$="UNASSIGNED LINE 18650"
18660 B$=""
18670 C$=""
18680 E$=""
18690 F$=""
18700 RETURN
18710 REM ::::: LABEL #7 :::::
18720 A$="UNASSIGNED LINE 18720"
18730 B$=""
18740 C$=""
18750 E$=""
18760 F$=""
18770 RETURN
18780 REM ::::: LABEL #8 :::::
18790 A$="UNASSIGNED LINE 18790"
18800 B$=""
18810 C$=""
18820 E$=""
18830 F$=""
18840 RETURN
18850 REM ::::: LABEL #9 :::::
18860 A$="UNASSIGNED LINE 18860"
18870 B$=""
18880 C$=""
18890 E$=""
18900 F$=""
18910 RETURN
18920 REM ::::: LABEL #0 :::::
18930 A$="UNASSIGNED LINE 18860"
18940 B$=""
18950 C$=""
18960 E$=""
18970 F$=""
18980 RETURN
25000 REM
25010 REM ::::: END :::::
25015 REM
25020 PRINT CHR$(147)
25030 PRINT CHR$(147):FOR I=1 TO 4:PRINT CHR$(17):NEXT I
25040 PRINT " ********************"
25050 PRINT SPC(10)"* *"
25060 PRINT " * GOOD BYE *"
25070 PRINT SPC(10)"* *"
25080 PRINT " ********************"
25090 FOR I=1 TO 1000:NEXT I
25100 FOR I=1 TO 25:PRINT:NEXT I
25110 END
31000 REM
31010 REM ::::: SUBROUTINE LIST :::::
31020 REM
31030 REM 100 SETUP/MAIN MENU
31040 REM 1000 PRINT MENU
31050 REM 2000 INSTRUCTIONS
31060 REM 4000 LABEL BORDER
31070 REM 5000 LINE LIMITER & INPUT LINES
31090 REM 7000 HOW MANY LABELS?
31100 REM 8000 STANDARD PRINT
31110 REM 9000 DOUBLE WIDE
31120 REM 10000 SETUP EMPHASIZED
31130 REM 11000 LABEL FOR SCREEN
31140 REM 12000 80 CPL SETUP
31150 REM 13000 132 CPL SETUP
31160 REM 14000 40 CPL SETUP
31170 REM 15000 66 CPL SETUP
31180 REM 16000 TRIPLE WIDE
31190 REM 17000 YOUR LABEL
31200 REM 18000 10 MOST USED
31210 REM 25000 END
31220 REM 31000 SUBROUTINE LIST